package com.hualude.roadsign.service;

import com.hualude.roadsign.dto.DTRequestDto;
import com.hualude.roadsign.dto.DTResponseDto;
import com.hualude.roadsign.dto.PortBlueRuleDto;
import com.hualude.roadsign.dto.PortRedRuleDto;

import java.util.List;

/**
 * Created by xu_jiaHui on 2017/12/9.
 */
public interface PortRuleService {

    /**
     * @Description: 获取紧急规则用于DT展示
     * @author xu_jiaHui
     * @date 2017/12/9 16:25
     */
    public DTResponseDto getPortRedRuleById(DTRequestDto dtRequestDto, Integer alarmId) throws Exception;

    /**
     * @Description: 获取普通规则用于DT展示
     * @author xu_jiaHui
     * @date 2017/12/9 16:25
     */
    public DTResponseDto getPortBlueRuleById(DTRequestDto dtRequestDto, Integer alarmId) throws Exception;

    /**
     * @Description: 添加常规规则
     * @author xu_jiaHui
     * @date 2017/12/9 23:39
     */
    public String addPortRedRule(List<PortRedRuleDto> dtos) throws Exception;


    /**
     * @Description: 添加紧急规则(需要及时更新）
     * @author xu_jiaHui
     * @date 2017/12/9 23:40
     */
    public Integer addPortBlueRule(List<PortBlueRuleDto> dtos) throws Exception;


    /**
     * @Description: 删除某一规则（需要及时更新版本）
     * @author xu_jiaHui
     * @date 2017/12/10 9:29
     */
    public Integer deletePortRedRule(String redRuleIds, Integer ruleModelId) throws Exception;

    /**
     * @Description: 删除某一规则（不需要及时更新)
     * @author xu_jiaHui
     * @date 2017/12/10 11:26
     */
    public Integer deletePortBlueRule(String blueRuleIds, Integer alarmId) throws Exception;

    /**
     * @Description: 添加规则
     * @author xu_jiaHui
     * @date 2018/5/2
     */
    public Integer addRedRule(PortRedRuleDto redRuleDto)throws Exception;

    public Integer addBlueRule(PortBlueRuleDto blueRuleDto)throws Exception;
}
